home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cocktail / rex.lha / rex / m2c / Nfa.h < prev    next >
C/C++ Source or Header  |  1992-08-18  |  2KB  |  29 lines

  1. #define DEFINITION_Nfa
  2.  
  3. #ifndef DEFINITION_ScanTabs
  4. #include "ScanTabs.h"
  5. #endif
  6.  
  7. #define Nfa_NoTransition    0
  8. typedef LONGINT Nfa_NStateRange;
  9. typedef LONGINT Nfa_TransitionRange;
  10. extern Nfa_NStateRange Nfa_NStateCount;
  11. extern Nfa_TransitionRange Nfa_TransitionCount;
  12. extern void Nfa_BeginNfa ARGS(());
  13. extern Nfa_NStateRange Nfa_MakeNState ARGS((Nfa_TransitionRange pTransitions));
  14. extern void Nfa_PutNSemantics ARGS((Nfa_NStateRange State, ScanTabs_RuleType pSemantics));
  15. extern ScanTabs_RuleType Nfa_GetNSemantics ARGS((Nfa_NStateRange State));
  16. extern void Nfa_PutTransitions ARGS((Nfa_NStateRange State, Nfa_TransitionRange pTransition));
  17. extern Nfa_TransitionRange Nfa_GetTransitions ARGS((Nfa_NStateRange State));
  18. extern BOOLEAN Nfa_IsLastTransition ARGS((Nfa_TransitionRange Transition));
  19. extern Nfa_TransitionRange Nfa_NextTransition ARGS((Nfa_TransitionRange Transition));
  20. extern Nfa_TransitionRange Nfa_MakeTransition ARGS((CHAR pCh, Nfa_NStateRange State));
  21. extern Nfa_TransitionRange Nfa_AddTransition ARGS((Nfa_TransitionRange Transition, Nfa_TransitionRange Transitions));
  22. extern CHAR Nfa_GetCh ARGS((Nfa_TransitionRange Transition));
  23. extern Nfa_NStateRange Nfa_GetNextState ARGS((Nfa_TransitionRange Transition));
  24. extern Nfa_TransitionRange Nfa_UniteTransitions ARGS((Nfa_TransitionRange t1, Nfa_TransitionRange t2));
  25. extern Nfa_TransitionRange Nfa_CopyTransitions ARGS((Nfa_TransitionRange t1));
  26. extern void Nfa_WriteNfa ARGS(());
  27. extern void Nfa_FinalizeNfa ARGS(());
  28. extern void BEGIN_Nfa();
  29.